package com.ruoyi.ade.domain;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * Ade Rag Lab对象 ade_rag_lab
 * 
 * @author wxh
 * @date 2025-07-23
 */
public class AdeRagLab extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** ID */
    private Long id;

    /** Algorithm Name */
    @Excel(name = "Algorithm Name")
    private String algorithm;

    /** LLM */
    @Excel(name = "LLM")
    private String llm;

    /** Prompt ID */
    @Excel(name = "Prompt ID")
    private Long promptId;

    /** ADE KB ID */
    @Excel(name = "ADE KB ID")
    private Long adekbId;

    /** SimScore */
    @Excel(name = "SimScore")
    private Float simScore;

    /** TopN */
    @Excel(name = "TopN")
    private Long topn;

    @Excel(name = "ChunkType")
    private String chunkType;

    /** Total */
    @Excel(name = "Total")
    private Long pos;

    /** Finished */
    @Excel(name = "Finished")
    private Long neg;

    /** Status */
    @Excel(name = "Status")
    private String status;

    /** Folds */
    @Excel(name = "Folds")
    private Long folds;

    /** Fold Size */
    @Excel(name = "Fold Size")
    private Long foldSize;

    /** Hits */
    @Excel(name = "Hits")
    private Long hitStandard;

    /** Finished */
    @Excel(name = "Finished")
    private Long finished;

    /** Size */
    @Excel(name = "Size")
    private Long total;

    /** Precision Mean */
    @Excel(name = "Precision Mean")
    private Float precisionMean;

    /** Precision SD */
    @Excel(name = "Precision SD")
    private Float precisonSd;

    /** Recall Mean */
    @Excel(name = "Recall Mean")
    private Float recallMean;

    /** Recall SD */
    @Excel(name = "Recall SD")
    private Float recallSd;

    /** f1 Mean */
    @Excel(name = "f1 Mean")
    private Float f1Mean;

    /** f1 SD */
    @Excel(name = "f1 SD")
    private Float f1Sd;

    /** Hit Adeknowledges */
    @Excel(name = "Hit Adeknowledges")
    private Long hitKnowledgeCount;

    /** Hit Total SimScore */
    @Excel(name = "Hit Total SimScore")
    private Float hitSimscoreTotal;

    /** Other Metrics */
    @Excel(name = "Other Metrics")
    private String props;

    public String getChunkType() {
        return chunkType;
    }

    public void setChunkType(String chunkType) {
        this.chunkType = chunkType;
    }

    public void setId(Long id)
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }

    public void setAlgorithm(String algorithm) 
    {
        this.algorithm = algorithm;
    }

    public String getAlgorithm() 
    {
        return algorithm;
    }

    public void setLlm(String llm) 
    {
        this.llm = llm;
    }

    public String getLlm() 
    {
        return llm;
    }

    public void setPromptId(Long promptId) 
    {
        this.promptId = promptId;
    }

    public Long getPromptId() 
    {
        return promptId;
    }

    public void setAdekbId(Long adekbId) 
    {
        this.adekbId = adekbId;
    }

    public Long getAdekbId() 
    {
        return adekbId;
    }

    public Float getSimScore() {
        return simScore;
    }

    public void setSimScore(Float simScore) {
        this.simScore = simScore;
    }

    public void setTopn(Long topn)
    {
        this.topn = topn;
    }

    public Long getTopn() 
    {
        return topn;
    }

    public void setPos(Long pos) 
    {
        this.pos = pos;
    }

    public Long getPos() 
    {
        return pos;
    }

    public void setNeg(Long neg) 
    {
        this.neg = neg;
    }

    public Long getNeg() 
    {
        return neg;
    }

    public void setStatus(String status) 
    {
        this.status = status;
    }

    public String getStatus() 
    {
        return status;
    }

    public void setFolds(Long folds) 
    {
        this.folds = folds;
    }

    public Long getFolds() 
    {
        return folds;
    }

    public void setFoldSize(Long foldSize) 
    {
        this.foldSize = foldSize;
    }

    public Long getFoldSize() 
    {
        return foldSize;
    }

    public void setHitStandard(Long hitStandard) 
    {
        this.hitStandard = hitStandard;
    }

    public Long getHitStandard() 
    {
        return hitStandard;
    }

    public void setFinished(Long finished) 
    {
        this.finished = finished;
    }

    public Long getFinished() 
    {
        return finished;
    }

    public void setTotal(Long total) 
    {
        this.total = total;
    }

    public Long getTotal() 
    {
        return total;
    }

    public Float getPrecisionMean() {
        return precisionMean;
    }

    public void setPrecisionMean(Float precisionMean) {
        this.precisionMean = precisionMean;
    }

    public Float getPrecisonSd() {
        return precisonSd;
    }

    public void setPrecisonSd(Float precisonSd) {
        this.precisonSd = precisonSd;
    }

    public Float getRecallMean() {
        return recallMean;
    }

    public void setRecallMean(Float recallMean) {
        this.recallMean = recallMean;
    }

    public Float getRecallSd() {
        return recallSd;
    }

    public void setRecallSd(Float recallSd) {
        this.recallSd = recallSd;
    }

    public Float getF1Mean() {
        return f1Mean;
    }

    public void setF1Mean(Float f1Mean) {
        this.f1Mean = f1Mean;
    }

    public Float getF1Sd() {
        return f1Sd;
    }

    public void setF1Sd(Float f1Sd) {
        this.f1Sd = f1Sd;
    }

    public Long getHitKnowledgeCount() {
        return hitKnowledgeCount;
    }

    public void setHitKnowledgeCount(Long hitKnowledgeCount) {
        this.hitKnowledgeCount = hitKnowledgeCount;
    }

    public Float getHitSimscoreTotal() {
        return hitSimscoreTotal;
    }

    public void setHitSimscoreTotal(Float hitSimscoreTotal) {
        this.hitSimscoreTotal = hitSimscoreTotal;
    }

    public void setProps(String props)
    {
        this.props = props;
    }

    public String getProps() 
    {
        return props;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("algorithm", getAlgorithm())
            .append("llm", getLlm())
            .append("promptId", getPromptId())
            .append("adekbId", getAdekbId())
            .append("simScore", getSimScore())
            .append("topn", getTopn())
            .append("pos", getPos())
            .append("neg", getNeg())
            .append("status", getStatus())
            .append("folds", getFolds())
            .append("foldSize", getFoldSize())
            .append("hitStandard", getHitStandard())
            .append("finished", getFinished())
            .append("total", getTotal())
            .append("precisionMean", getPrecisionMean())
            .append("precisonSd", getPrecisonSd())
            .append("recallMean", getRecallMean())
            .append("recallSd", getRecallSd())
            .append("f1Mean", getF1Mean())
            .append("f1Sd", getF1Sd())
            .append("hitKnowledgeCount", getHitKnowledgeCount())
            .append("hitSimscoreTotal", getHitSimscoreTotal())
            .append("remark", getRemark())
            .append("props", getProps())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .toString();
    }
}
